/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package br.com.credsoft.copcred.model.vo;

import java.math.BigDecimal;
import java.util.Calendar;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.PrimaryKeyJoinColumn;
import javax.persistence.Table;

/**
 *
 * @author c090347
 * @since 2009-06-17
 */
@Entity
@Table(name = "emprestimo")
@PrimaryKeyJoinColumn(name= "proposta_id")
public class Emprestimo extends Proposta {

    private static final long serialVersionUID = 1610696134919872093L;
    private Double coeficiente;
    private BigDecimal valorLiberado;
    private Double taxaEfetivaMensal;
    private BigDecimal valorTAC;

    public Emprestimo() {
        super();
    }

    public Emprestimo(Long id) {
        super(id);
    }

    public Emprestimo(Long id, Banco banco, Parceiro parceiro, Portifolio portifolio, Corretor corretor, Cliente cliente, Usuario usuarioCadastro, Usuario usuarioFinalizacao, BigDecimal valorProposta, Calendar dataAssinatura, Calendar dataVigencia, Calendar dataFinalizacao, String motivoFinalizacao, Double percentualComissaoRecebida, Double percentualComissaoCorretor, Calendar dataRecebimentoComissao, Calendar dataPagamentoComissao, BigDecimal valorRecebidoComissao, BigDecimal valorPagoComissao, boolean acatarPrejuizo, Double coeficiente, BigDecimal valorLiberado, Double taxaEfetivaMensal, BigDecimal valorTAC) {
        super(id, banco, parceiro, portifolio, corretor, cliente, usuarioCadastro, usuarioFinalizacao, valorProposta, dataAssinatura, dataVigencia, dataFinalizacao, motivoFinalizacao, percentualComissaoRecebida, percentualComissaoCorretor, dataRecebimentoComissao, dataPagamentoComissao, valorRecebidoComissao, valorPagoComissao, acatarPrejuizo);
        this.coeficiente = coeficiente;
        this.valorLiberado = valorLiberado;
        this.taxaEfetivaMensal = taxaEfetivaMensal;
        this.valorTAC = valorTAC;
    }

    @Column(name = "coeficiente", nullable = false, scale = 7, precision = 10)
    public Double getCoeficiente() {
        return coeficiente;
    }

    public void setCoeficiente(Double coeficiente) {
        this.coeficiente = coeficiente;
    }

    @Column(name = "valor_liberado", nullable = true, scale = 2, precision = 10)
    public BigDecimal getValorLiberado() {
        return valorLiberado;
    }

    public void setValorLiberado(BigDecimal valorLiberado) {
        this.valorLiberado = valorLiberado;
    }

    @Column(name = "taxa_efetiva_mensal", nullable = false, scale = 7, precision = 10)
    public Double getTaxaEfetivaMensal() {
        return taxaEfetivaMensal;
    }

    public void setTaxaEfetivaMensal(Double taxaEfetivaMensal) {
        this.taxaEfetivaMensal = taxaEfetivaMensal;
    }

    @Column(name = "valor_tac", nullable = true, scale = 2, precision = 10)
    public BigDecimal getValorTAC() {
        return valorTAC;
    }

    public void setValorTAC(BigDecimal valorTAC) {
        this.valorTAC = valorTAC;
    }
}
